/*
    fs文件系统
        -文件系统简单的来说通过node来操作系统中的文件
        -使用文件系统，首先要引入fs模块，fs是核心模块，直接引入不需要下载
    同步调用
        同步文件系统会阻塞程序的执行
        文件写入
            打开文件
                fs.openSync(path,flags[,mode]);
                    -path   要打开文件的路径
                    -flags  打开文件要操作的类型
                        r   只读
                        w   可写
                    -mode   设置文件的操作权限，一般不传
                返回值
                    该方法会返回一个文件的描述符来作为结果，我们可以通过该描述符来对文件进行各种操作
                例子：
                    var fd = fs.openSync("hello.txt","w");
            向文件写入内容
                fs.writeSync(fd,string[,position[,encoding]]);
                    -fd             文件的描述符，传递要写入的文件的描述符
                    -string         要写入的内容
                    -position       写入的其实位置
                    -encoding       写入的编码默认是utf-8
                例子：
                    fs.writeSync(fd,"我写入的内容");
            保存并关闭
                fs.closeSync(fd)
                    -fd     关闭文件的描述符
                例子：
                    fs.closeSync(fd);
    异步调用
        异步文件系统不会阻塞，而是在操作完成后，通过回调函数将结果返回，异步函数都有回调函数
        文件写入
            打开文件
                fs.open(path,flags[,mode],callback)
                    -path       要打开文件的路径
                    -flags      打开文件要操作的类型
                        r       只读
                        w       可写
                    -mode       设置文件的操作权限，一般不传
                    -callback   回调函数
                        有两个参数
                            err     错误对象，如果没有错误为null
                            fd      文件的描述符
                异步方法没有返回值，都是通过回调函数返回的
            向文件写入内容
                fs.write(fd,string[,position[,encoding]],callback);
                    -fd             文件的描述符，传递要写入的文件的描述符
                    -string         要写入的内容
                    -position       写入的其实位置
                    -encoding       写入的编码默认是utf-8
                    -callback       回调函数
            关闭文件
                fs.close(fd,callback);
                    -fd             文件描述符
                    -callback       回调函数
*/
//同步写入
// var fs = require("fs");
// var fd = fs.openSync("hello.txt", "w");
// fs.writeSync(fd, "这是写入的内容");
// fs.closeSync(fd);
//异步写入
// var text = "异步写入"
// var fs = require("fs");
// fs.open("hello2.txt", "w", function(err, fd) {
//     if (!err) {
//         fs.writeFile(fd, text, function(err) {
//             if (!err) {
//                 console.log("写入成功");
//                 fs.close(fd, function(err) {
//                     if (!err) {
//                         console.log("成功关闭");
//                     } else {
//                         console.log(err);
//                     }
//                 })
//             } else {
//                 console.log(err);
//             }
//         })
//     } else {
//         console.log(err);
//     }
// })